/**
 * Created with IntelliJ IDEA.
 * User: derek
 * Date: 6/16/13
 * Time: 1:06 PM
 * To change this template use File | Settings | File Templates.
 */

import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.QueueingConsumer;

public class Recv {

   private final static String QUEUE_NAME = "hello";

   public static void main(String[] argv)
         throws java.io.IOException,
         java.lang.InterruptedException {

      ConnectionFactory factory = new ConnectionFactory();
      factory.setHost("localhost");
      Connection connection = factory.newConnection();
      Channel channel = connection.createChannel();

      channel.queueDeclare(QUEUE_NAME, false, false, false, null);
      System.out.println(" [*] Waiting for messages. To exit press CTRL+C");

      QueueingConsumer consumer = new QueueingConsumer(channel);
      channel.basicConsume(QUEUE_NAME, true, consumer);

      while (true) {
         QueueingConsumer.Delivery delivery = consumer.nextDelivery();
         String message = new String(delivery.getBody());
         System.out.println(" [x] Received '" + message + "': current time millis: " + System.currentTimeMillis());
      }
   }
}
